查看原文
其他

前端食堂技术周刊第 67 期: 2022 State of JS、ESLint 2022、pnpm 2022、大淘宝Web端技术

霍语佳 前端食堂 2023-01-17

这是前端食堂的第 141 篇原创

美味值:🌟🌟🌟🌟🌟

口味:东北大饭包

  • 食堂技术周刊仓库地址:https://github.com/Geekhyt/weekly[1]

本期摘要

  • 2022 State of JS 结果出炉
  • ESLint 2022 年终总结
  • pnpm 2022 年终总结
  • 大淘宝 Web 端技术概览
  • 主流时间库横向对比
  • 给 Node.js 开发者的 Golang 教程
  • 2022 CodePen 最受欢迎的 Pens
  • 改进 Core Web Vitals 的最佳实践

大家好,我是童欧巴。欢迎来到前端食堂技术周刊,我们先来看下上周的技术资讯。

技术资讯

1. 2022 State of JS 结果出炉[2]

State of JS 结果终于出炉,看看有多少你没听过的技术和开发者?我认为如果 95% 你都关注的话,你已经有了一个不错的前端技术视野了。

2. ESLint 2022 年终总结[3]

  • 网站重构
  • 新的配置系统
  • 支持 ES2022
  • 收入与支出
  • 资金支持附属项目和生态系统
  • 重写 ESLint[4]

3. pnpm 2022 年终总结[5]

2022 年新增的主要特性:

  • symlinkless hoisted node_modules[6]
  • side-effects-cache[7]
  • pnpm patch[8]
  • Time-based resolution[9]
  • pnpm licenses list[10]

下面我们来看技术资料。

技术资料

1. 大淘宝 Web 端技术概览

淘宝 Web 技术地图和技术产品介绍。

2. 主流时间库横向对比

文章对比了 Native Date、Moment.js、Day.js、Date-fns 等时间库的优缺点,并给出以下结论:

  • Native Date 无法直接解析自定义格式的时间字符串,且容易引入时区问题。(不推荐)
  • Moment.js 包体积过大,且时间对象存在 mutable 问题,源代码也早已停止维护。(不推荐)
  • Day.js 克服了 moment.js 的缺陷,且 api 与 moment.js 高度吻合,从 moment.js 迁移成本低。但是部分功能需要通过插件引入。(推荐在不涉及 UTC 时间的情况下使用)
  • Date-fns 同样克服了 moment.js 的缺陷,并支持 tree-shaking,单独使用某些功时,引入的包体积甚至小于 day.js。但需要从目标目录导入所需的工具函数,上手难度大。在引入了多种工具函数或涉及解析时间字符串时,还会导致包体积过大。(推荐存在轻度需求时使用)

3. 给 Node.js 开发者的 Golang 教程[11]

提供大量语法示例对比,提升你的学习效率。

4. 2022 CodePen 最受欢迎的 Pens[12]

CodePen 年度 Top 100 Pens 出炉。

5. 改进 Core Web Vitals 的最佳实践[13]

Chrome DevRel 团队总结了在当下提高 Core Web Vitals 性能的最佳实践集合,包含 LCP、CLS、FID、INP、TTFB 等。

随机 MDN

  • Pointer events[14]

周刊赞助

整理周刊要花费大量的精力和时间,你可以通过以下方式支持我:

  • 将食堂分享给你的朋友;
  • 订阅食堂的竹白付费专栏(食堂为你准备了专属的会员通讯,以及前端食堂数字花园知识库的访问权限)。

订阅地址:https://hungryturbo.zhubai.love/

知识星球

近期更新:

  • 每日技术资讯简报
  • 技术年货
  • 2023 前端趋势预测
  • 2022 食堂技术周刊回顾

新春特惠,全年最低价,手慢无。

抽奖送书福利

好了,以上就是本期的食堂周刊,观众老爷们如果觉得还不错,一键三连是对食堂老板最大的支持。

你的前端食堂,吃好每一顿饭,我们下期见。

参考资料

[1]

食堂技术周刊仓库地址:https://github.com/Geekhyt/weekly: https://github.com/Geekhyt/weekly

[2]

2022 State of JS 结果出炉: https://2022.stateofjs.com/en-US/

[3]

ESLint 2022 年终总结: https://eslint.org/blog/2023/01/eslint-2022-year-review/

[4]

重写 ESLint: https://github.com/eslint/eslint/discussions/16557

[5]

pnpm 2022 年终总结: https://pnpm.io/blog/2022/12/30/yearly-update

[6]

symlinkless hoisted node_modules: https://github.com/pnpm/pnpm/releases/tag/v6.25.0

[7]

side-effects-cache: https://pnpm.io/npmrc#side-effects-cache

[8]

pnpm patch: https://pnpm.io/cli/patch

[9]

Time-based resolution: https://github.com/pnpm/pnpm/releases/tag/v7.10.0

[10]

pnpm licenses list: https://pnpm.io/cli/licenses

[11]

给 Node.js 开发者的 Golang 教程: https://github.com/miguelmota/golang-for-nodejs-developers

[12]

2022 CodePen 最受欢迎的 Pens: https://codepen.io/2022/popular/pens

[13]

改进 Core Web Vitals 的最佳实践: https://web.dev/top-cwv-2023/

[14]

Pointer events: https://developer.mozilla.org/zh-CN/docs/Web/API/Pointer_events

公众号:前端食堂

知乎:童欧巴

掘金:童欧巴

这是一个终身学习的男人,他在坚持自己热爱的事情,欢迎你加入前端食堂,和这个男人一起开心的“变胖”~

如果你觉得读了本文有收获的话可以点个在看让我看到。阅读过程中有任何问题、想法或者感触也欢迎你在下方留言,也可以在后台回复加群进入食堂的交流群。

沟通创造价值,分享带来快乐。也欢迎你分享给身边有需要的同学,利他就是最好的利己

你的在看是我更新的动力

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存